It has been known to connect a plurality of processors and parallelly operate them in order to increase the processing speed of a data processing apparatus. For example, the Intel "Component Data Catalog" 1981, pages 7-51 to 7-57 and 7-65 to 7-75 shows a configuration in which an input/output processor 8089 or a numeric operation processor 8087 is connected to a CPU processor 8086 or 8088 for parallel operation in order to increase the processing speed. When the input/output processor 8089 is started by the CPU, it independently processes in accordance with its own program. This type of connection requires communication between the processors for indicating the start and the end of processing. Accordingly, this configuration is suited to highly independent parallel processing, but where high speed and frequent processings are required, the execution of the program for the required communication between processors causes an increase in overhead and the processing speed is lowered.
The numeric operation processor 8087 essentially follows the CPU as opposed to the processor 8089 and merely shares a portion of instructions (floating point operation or special function operation) of a single program which the CPU serially fetches. This type of connection is superior in that it does not include an overhead due to a communication program.
However, in this configuration, instructions for the numeric operation processor 8087 are incorporated in a program for the CPU processor 8086 in addition to instructions for the CPU processor 8086, and when the CPU processor 8086 detects an instruction for the numeric operation processor 8087, it sends an instruction decode signal to the numeric operation processor 8087 to leave processing for that instruction to the numeric operation processor 8087. As a result, if the execution of the instruction for the 8087 processor is delayed for some reason, the execution of the instruction for the CPU processor 8086 is also delayed.
Accordingly, where there is a possibility that the processing in one of the processors is delayed, it is desirable that the processing in one processor and the processing in the other processor are executed by separate programs.